#ifndef __BUILDER2_HPP__
#define __BUILDER2_HPP__

#include "abstract_builder.hpp"

class Builder2: public AbstractBuilder {
public:
	Builder2() { cout<<__func__<<endl; m_product = new Product(); }
	~Builder2() { cout<<__func__<<endl; }
	void buildCoolDish(const string &name) { m_product->add(name, 20); }
	void buildDrink(const string &name) { m_product->add(name, 22); }
	void buildRice(const string &name) { m_product->add(name, 22); }
	Product *getProduct() { return m_product; }
private:
	Product *m_product;
};

#endif /* end of include guard */
